package com.map.util;

import com.alibaba.fastjson.JSONObject;

import java.util.Map;

public interface  AbstreathttpClientUtil {

    // 默认字符集
     static final String ENCODING = "UTF-8";

    /**
     * @Title: sendPost
     * @Description: TODO(发送post请求)
     * @param url 请求地址
     * @param headers 请求头
     * @param data 请求实体
     * @param encoding 字符集
     * @author wangxy
     * @return String
     * @date 2018年5月10日 下午4:36:17
     * @throws
     */
    public  String sendPost(String url, Map<String, String> headers, JSONObject data, String encoding);

    /**
     * @Title: sendPost
     * @Description: TODO(发送post请求，请求数据默认使用json格式，默认使用UTF-8编码)
     * @param url 请求地址
     * @param data 请求实体
     * @author wangxy
     * @return String
     * @date 2018年5月10日 下午4:37:28
     * @throws
     */
    public  String sendPost(String url, JSONObject data) ;

    /**
     * @Title: sendPost
     * @Description: TODO(发送post请求，请求数据默认使用json格式，默认使用UTF-8编码)
     * @param url 请求地址
     * @param params 请求实体
     * @author wangxy
     * @return String
     * @date 2018年5月10日 下午6:11:05
     * @throws
     */
    public  String sendPost(String url,Map<String,Object> params);

    /**
     * @Title: sendPost
     * @Description: TODO(发送post请求，请求数据默认使用UTF-8编码)
     * @param url 请求地址
     * @param headers 请求头
     * @param data 请求实体
     * @author wangxy
     * @return String
     * @date 2018年5月10日 下午4:39:03
     * @throws
     */
    public  String sendPost(String url, Map<String, String> headers, JSONObject data);

    /**
     * @Title: sendPost
     * @Description:(发送post请求，请求数据默认使用UTF-8编码)
     * @param url 请求地址
     * @param headers 请求头
     * @param params 请求实体
     * @author wangxy
     * @return String
     * @date 2018年5月10日 下午5:58:40
     * @throws
     */
    public  String sendPost(String url,Map<String,String> headers,Map<String,String> params);

    /**
     * @Title: sendGet
     * @Description: TODO(发送get请求)
     * @param url 请求地址
     * @param params 请求参数
     * @param encoding 编码
     * @author wangxy
     * @return String
     * @date 2018年5月14日 下午2:39:01
     * @throws
     */
    public  String sendGet(String url,Map<String,Object> params,String encoding);
    /**
     * @Title: sendGet
     * @Description: TODO(发送get请求)
     * @param url 请求地址
     * @param params 请求参数
     * @author wangxy
     * @return String
     * @date 2018年5月14日 下午2:32:39
     * @throws
     */
    public  String sendGet(String url,Map<String,Object> params);

    /**
     * @param url 请求地址
     * @return String
     * @throws
     * @Title: sendGet
     * @Description: TODO(发送get请求)
     * @author wangxy
     * @date 2018年5月14日 下午2:33:45
     */
    public  String sendGet(String url) ;
}
